package com.sdy.resdir.biz.service;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.sdy.common.model.BizException;
import com.sdy.resdir.biz.model.RdIpImpleOrder;
import com.sdy.mvc.service.BaseService;
import com.sdy.resdir.biz.model.RdSelfBuiltSystem;
import com.sdy.resdir.biz.vo.IpImpleOrderInfoVo;
import com.sdy.resdir.biz.vo.IpImpleOrderVo;

import java.util.List;

/**
 * <p>
 * ip实施工单 服务类
 * </p>
 *
 * @author cgj
 * @since 2019-12-17
 */
public interface RdIpImpleOrderService extends BaseService<RdIpImpleOrder> {

    /**
     * 查询IP实施工单列表
     *
     * @param name
     * @param ip
     * @param state
     * @param userId
     * @return
     */
    IPage<IpImpleOrderVo> ipImpleOrderPageList(Page page, String name, String ip, Integer state, Integer userId);

    /**
     * 查看IP实施工单详情
     *
     * @param orderId
     * @return
     */
    IpImpleOrderInfoVo ipImpleOrderInfo(Integer orderId);

    /**
     * IP实施工单完成实施，并实现修改单内容
     *
     * @param orderId
     * @return
     */
    int impleOrderInfoDone(Integer orderId) throws BizException;

    /**
     * 获取部门全称
     * @param rd
     * @return
     */
    String getName(RdSelfBuiltSystem rd);

    /**
     * 批量生成实施工单
     * @param orderList
     * @return
     */
    Integer insertBatch(List<RdIpImpleOrder> orderList);
}
